﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Sylvain.Model
{
    public interface ISylvainModel
    {
        #region Common Page Methods

        void InsertPageContent(int PageId, string PageContent, string UpdatedBy);
        string GetPageContent(int PageId);
        int GetPageId(string PageHandler);
        #endregion

        #region Contract
        void AddContract(Contract objContract);
        Contract DeleteContract(int ContractId);
        void EditContract(Contract objContract);
        List<Contract> GetAllContracts();
        Contract GetContractDescription(int id);
        #endregion

        #region News Section
        void AddNewsSection(NewsSection objNewsSection);
        void DeleteNewsSection(int Id);
        void EditNewsSection(NewsSection objNewsSection);
        List<NewsSection> GetAllNews();
        NewsSection GetLatestQuote(int tagid);
        NewsSection GetLatestPressRelease(int tagid);
        NewsSection GetLatestNews(int tagid);
        List<NewsSection> GetSearchDetails(string strSearch);
        #endregion


        #region Employees Section

        void AddEmployeesSection(EmployeesSection objEmployeesSection);
        void DeleteEmployeesSection(int Id);
        void EditEmployeesSection(EmployeesSection objEmployeesSection);
        List<EmployeesSection> GetAllEmployeesSection();
        EmployeesSection GetLatestCEOCorner(int tagid);
        EmployeesSection GetLatestWhatNew(int tagid);
        List<EmployeesSection> GetEmployeesSearchDetails(string strSearch);


        List<Employee> GetAllEmployees();
        void AddEmployee(Employee objEmployee, string net_username, string net_password, string host);
        void EditEmployee(Employee objEmployee, string net_username, string net_password, string host);
        void DeleteEmployee(int Id);

        void ForgotPassword(string email, string username, string net_username, string net_password, string host);
        Employee GetLogin(string username, string password);
        #endregion



        #region Publications

        List<Publication> GetAllPublications();
        void AddPublication(Publication objPublication);
        void DeletePublication(int Id);
        void EditPublication(Publication objPublication);
        Publication GetCurrentPublication();
        Publication GetPublication(int Id);

        #endregion
    }

    /// <summary>
    /// Page History
    /// </summary>
    public class PageHistory
    {
        public string PageName { get; set; }
        public string DateUpdated { get; set; }
    }
}  
 
